Evictions and Code Violations in Philadelphia

Part 1: Exploring Evictions and Code Violations in Philadelphia

In this project, I'll explore spatial trends evictions in Philadelphia using data from the Eviction Lab and building code violations using data from OpenDataPhilly.

I'll be exploring the idea that evictions can occur as retaliation against renters for reporting code violations. Spatial correlations between evictions and code violations from the City's Licenses and Inspections department can offer some insight into this question.

A couple of interesting background readings:

1.1 Explore Eviction Lab Data

The Eviction Lab built the first national database for evictions. If you aren't familiar with the project, you can explore their website: https://evictionlab.org/

1.1.1 Read data using geopandas

The first step is to read the eviction data by census tract using geopandas. The data for all of Pennsylvania by census tract is available in the data/ folder in a GeoJSON format.

Load the data file "PA-tracts.geojson" using geopandas

In [1]:
import pandas as pd
import geopandas as gpd
In [2]:
pd.options.display.max_columns = 999
In [3]:
eviction = gpd.read_file("./data/PA-tracts.geojson")
eviction.head()
Out[3]:
GEOID west south east north n pl p-00 pr-00 roh-00 pro-00 mgr-00 mhi-00 mpv-00 rb-00 pw-00 paa-00 ph-00 pai-00 pa-00 pnp-00 pm-00 po-00 ef-00 e-00 er-00 efr-00 lf-00 imputed-00 subbed-00 p-01 pr-01 roh-01 pro-01 mgr-01 mhi-01 mpv-01 rb-01 pw-01 paa-01 ph-01 pai-01 pa-01 pnp-01 pm-01 po-01 ef-01 e-01 er-01 efr-01 lf-01 imputed-01 subbed-01 p-02 pr-02 roh-02 pro-02 mgr-02 mhi-02 mpv-02 rb-02 pw-02 paa-02 ph-02 pai-02 pa-02 pnp-02 pm-02 po-02 ef-02 e-02 er-02 efr-02 lf-02 imputed-02 subbed-02 p-03 pr-03 roh-03 pro-03 mgr-03 mhi-03 mpv-03 rb-03 pw-03 paa-03 ph-03 pai-03 pa-03 pnp-03 pm-03 po-03 ef-03 e-03 er-03 efr-03 lf-03 imputed-03 subbed-03 p-04 pr-04 roh-04 pro-04 mgr-04 mhi-04 mpv-04 rb-04 pw-04 paa-04 ph-04 pai-04 pa-04 pnp-04 pm-04 po-04 ef-04 e-04 er-04 efr-04 lf-04 imputed-04 subbed-04 p-05 pr-05 roh-05 pro-05 mgr-05 mhi-05 mpv-05 rb-05 pw-05 paa-05 ph-05 pai-05 pa-05 pnp-05 pm-05 po-05 ef-05 e-05 er-05 efr-05 lf-05 imputed-05 subbed-05 p-06 pr-06 roh-06 pro-06 mgr-06 mhi-06 mpv-06 rb-06 pw-06 paa-06 ph-06 pai-06 pa-06 pnp-06 pm-06 po-06 ef-06 e-06 er-06 efr-06 lf-06 imputed-06 subbed-06 p-07 pr-07 roh-07 pro-07 mgr-07 mhi-07 mpv-07 rb-07 pw-07 paa-07 ph-07 pai-07 pa-07 pnp-07 pm-07 po-07 ef-07 e-07 er-07 efr-07 lf-07 imputed-07 subbed-07 p-08 pr-08 roh-08 pro-08 mgr-08 mhi-08 mpv-08 rb-08 pw-08 paa-08 ph-08 pai-08 pa-08 pnp-08 pm-08 po-08 ef-08 e-08 er-08 efr-08 lf-08 imputed-08 subbed-08 p-09 pr-09 roh-09 pro-09 mgr-09 mhi-09 mpv-09 rb-09 pw-09 paa-09 ph-09 pai-09 pa-09 pnp-09 pm-09 po-09 ef-09 e-09 er-09 efr-09 lf-09 imputed-09 subbed-09 p-10 pr-10 roh-10 pro-10 mgr-10 mhi-10 mpv-10 rb-10 pw-10 paa-10 ph-10 pai-10 pa-10 pnp-10 pm-10 po-10 ef-10 e-10 er-10 efr-10 lf-10 imputed-10 subbed-10 p-11 pr-11 roh-11 pro-11 mgr-11 mhi-11 mpv-11 rb-11 pw-11 paa-11 ph-11 pai-11 pa-11 pnp-11 pm-11 po-11 ef-11 e-11 er-11 efr-11 lf-11 imputed-11 subbed-11 p-12 pr-12 roh-12 pro-12 mgr-12 mhi-12 mpv-12 rb-12 pw-12 paa-12 ph-12 pai-12 pa-12 pnp-12 pm-12 po-12 ef-12 e-12 er-12 efr-12 lf-12 imputed-12 subbed-12 p-13 pr-13 roh-13 pro-13 mgr-13 mhi-13 mpv-13 rb-13 pw-13 paa-13 ph-13 pai-13 pa-13 pnp-13 pm-13 po-13 ef-13 e-13 er-13 efr-13 lf-13 imputed-13 subbed-13 p-14 pr-14 roh-14 pro-14 mgr-14 mhi-14 mpv-14 rb-14 pw-14 paa-14 ph-14 pai-14 pa-14 pnp-14 pm-14 po-14 ef-14 e-14 er-14 efr-14 lf-14 imputed-14 subbed-14 p-15 pr-15 roh-15 pro-15 mgr-15 mhi-15 mpv-15 rb-15 pw-15 paa-15 ph-15 pai-15 pa-15 pnp-15 pm-15 po-15 ef-15 e-15 er-15 efr-15 lf-15 imputed-15 subbed-15 p-16 pr-16 roh-16 pro-16 mgr-16 mhi-16 mpv-16 rb-16 pw-16 paa-16 ph-16 pai-16 pa-16 pnp-16 pm-16 po-16 ef-16 e-16 er-16 efr-16 lf-16 imputed-16 subbed-16 geometry
0 42003412002 -80.1243 40.5422 -80.0640 40.5890 4120.02 Allegheny County, Pennsylvania 4748.59 0.88 58.0 3.66 949.31 89226.06 195358.33 22.82 94.89 0.84 0.43 0.06 2.83 0.33 0.62 0.00 1.0 1.0 1.73 1.73 0.0 0.0 0.0 4748.59 0.88 59.0 3.66 949.31 89226.06 195358.33 22.82 94.89 0.84 0.43 0.06 2.83 0.33 0.62 0.00 0.0 0.0 0.00 0.00 0.0 0.0 0.0 4748.59 0.88 60.0 3.66 949.31 89226.06 195358.33 22.82 94.89 0.84 0.43 0.06 2.83 0.33 0.62 0.00 3.0 0.0 0.00 4.99 0.0 0.0 0.0 4748.59 0.88 61.0 3.66 949.31 89226.06 195358.33 22.82 94.89 0.84 0.43 0.06 2.83 0.33 0.62 0.00 0.0 0.0 0.00 0.00 0.0 0.0 0.0 4748.59 0.88 62.0 3.66 949.31 89226.06 195358.33 22.82 94.89 0.84 0.43 0.06 2.83 0.33 0.62 0.00 0.0 0.0 0.00 0.00 0.0 0.0 0.0 4525.07 0.93 63.0 5.83 799.06 117867.25 267511.43 13.86 89.33 1.42 2.65 0.00 6.41 0.0 0.00 0.19 1.0 0.0 0.00 1.58 0.0 0.0 0.0 4525.07 0.93 65.0 5.83 799.06 117867.25 267511.43 13.86 89.33 1.42 2.65 0.00 6.41 0.0 0.00 0.19 0.0 0.0 0.00 0.00 0.0 0.0 0.0 4525.07 0.93 66.0 5.83 799.06 117867.25 267511.43 13.86 89.33 1.42 2.65 0.00 6.41 0.0 0.00 0.19 0.0 0.0 0.00 0.00 0.0 0.0 1.0 4525.07 0.93 67.0 5.83 799.06 117867.25 267511.43 13.86 89.33 1.42 2.65 0.00 6.41 0.0 0.00 0.19 5.0 4.0 5.99 7.49 0.0 0.0 1.0 4525.07 0.93 68.0 5.83 799.06 117867.25 267511.43 13.86 89.33 1.42 2.65 0.00 6.41 0.0 0.00 0.19 2.0 1.0 1.47 2.95 0.0 0.0 1.0 4865.0 0.00 69.0 4.08 838.0 119583.0 280900.0 16.9 91.57 0.84 1.03 0.00 5.80 0.12 0.55 0.08 1.0 0.0 0.00 1.45 0.0 0.0 1.0 5362.0 0.46 71.0 3.28 1313.0 118611.0 302900.0 50.0 91.53 0.50 0.97 0.06 6.94 0.0 0.00 0.0 2.0 0.0 0.00 2.82 0.0 0.0 1.0 5362.0 0.46 73.0 3.28 1313.0 118611.0 302900.0 50.0 91.53 0.50 0.97 0.06 6.94 0.0 0.00 0.0 2.0 0.0 0.00 2.75 0.0 0.0 1.0 5362.0 0.46 75.0 3.28 1313.0 118611.0 302900.0 50.0 91.53 0.50 0.97 0.06 6.94 0.0 0.00 0.0 0.0 0.0 0.00 0.00 0.0 0.0 1.0 5362.0 0.46 76.0 3.28 1313.0 118611.0 302900.0 50.0 91.53 0.50 0.97 0.06 6.94 0.0 0.00 0.0 1.0 0.0 0.00 1.31 0.0 0.0 1.0 5362.0 0.46 78.0 3.28 1313.0 118611.0 302900.0 50.0 91.53 0.50 0.97 0.06 6.94 0.0 0.00 0.0 1.0 0.0 0.00 1.28 0.0 0.0 1.0 5362.0 0.46 80.0 3.28 1313.0 118611.0 302900.0 50.0 91.53 0.50 0.97 0.06 6.94 0.0 0.00 0.0 0.0 0.0 0.00 0.00 1.0 0.0 1.0 MULTIPOLYGON (((-80.06670 40.58401, -80.06655 ...
1 42003413100 -80.0681 40.5850 -79.9906 40.6143 4131 Allegheny County, Pennsylvania 6771.01 3.47 729.0 28.75 674.10 75492.65 193726.88 21.39 91.61 1.81 0.94 0.03 4.85 0.01 0.66 0.07 10.0 4.0 0.55 1.37 0.0 0.0 0.0 6771.01 3.47 724.0 28.75 674.10 75492.65 193726.88 21.39 91.61 1.81 0.94 0.03 4.85 0.01 0.66 0.07 16.0 11.0 1.52 2.21 0.0 0.0 0.0 6771.01 3.47 719.0 28.75 674.10 75492.65 193726.88 21.39 91.61 1.81 0.94 0.03 4.85 0.01 0.66 0.07 22.0 17.0 2.37 3.06 0.0 0.0 0.0 6771.01 3.47 713.0 28.75 674.10 75492.65 193726.88 21.39 91.61 1.81 0.94 0.03 4.85 0.01 0.66 0.07 14.0 10.0 1.40 1.96 0.0 0.0 0.0 6771.01 3.47 708.0 28.75 674.10 75492.65 193726.88 21.39 91.61 1.81 0.94 0.03 4.85 0.01 0.66 0.07 19.0 8.0 1.13 2.68 0.0 0.0 0.0 5648.32 2.06 703.0 31.24 830.01 86853.22 278013.85 26.67 89.57 1.87 2.30 0.00 3.88 0.0 2.38 0.00 31.0 12.0 1.71 4.41 0.0 0.0 0.0 5648.32 2.06 697.0 31.24 830.01 86853.22 278013.85 26.67 89.57 1.87 2.30 0.00 3.88 0.0 2.38 0.00 22.0 14.0 2.01 3.15 0.0 0.0 0.0 5648.32 2.06 692.0 31.24 830.01 86853.22 278013.85 26.67 89.57 1.87 2.30 0.00 3.88 0.0 2.38 0.00 34.0 4.0 0.58 4.91 0.0 0.0 1.0 5648.32 2.06 687.0 31.24 830.01 86853.22 278013.85 26.67 89.57 1.87 2.30 0.00 3.88 0.0 2.38 0.00 43.0 6.0 0.87 6.26 0.0 0.0 1.0 5648.32 2.06 681.0 31.24 830.01 86853.22 278013.85 26.67 89.57 1.87 2.30 0.00 3.88 0.0 2.38 0.00 24.0 3.0 0.44 3.52 0.0 0.0 1.0 6609.0 2.68 676.0 26.19 865.0 97264.0 271600.0 23.3 87.80 1.72 1.74 0.15 7.49 0.11 0.86 0.12 37.0 1.0 0.15 5.47 0.0 0.0 1.0 7223.0 4.26 687.0 27.37 943.0 114036.0 286600.0 21.7 77.24 3.88 1.27 0.00 16.02 0.0 1.59 0.0 49.0 3.0 0.44 7.14 0.0 0.0 1.0 7223.0 4.26 697.0 27.37 943.0 114036.0 286600.0 21.7 77.24 3.88 1.27 0.00 16.02 0.0 1.59 0.0 29.0 5.0 0.72 4.16 0.0 0.0 1.0 7223.0 4.26 708.0 27.37 943.0 114036.0 286600.0 21.7 77.24 3.88 1.27 0.00 16.02 0.0 1.59 0.0 23.0 3.0 0.42 3.25 0.0 0.0 1.0 7223.0 4.26 718.0 27.37 943.0 114036.0 286600.0 21.7 77.24 3.88 1.27 0.00 16.02 0.0 1.59 0.0 21.0 2.0 0.28 2.92 0.0 0.0 1.0 7223.0 4.26 729.0 27.37 943.0 114036.0 286600.0 21.7 77.24 3.88 1.27 0.00 16.02 0.0 1.59 0.0 16.0 2.0 0.27 2.20 0.0 0.0 1.0 7223.0 4.26 739.0 27.37 943.0 114036.0 286600.0 21.7 77.24 3.88 1.27 0.00 16.02 0.0 1.59 0.0 12.0 2.0 0.27 1.62 1.0 0.0 1.0 MULTIPOLYGON (((-80.06806 40.61254, -80.05452 ...
2 42003413300 -80.0657 40.5527 -80.0210 40.5721 4133 Allegheny County, Pennsylvania 5044.59 2.99 119.0 6.68 938.08 60019.14 131521.90 28.36 97.15 0.37 0.49 0.12 1.61 0.00 0.26 0.00 2.0 1.0 0.84 1.68 0.0 0.0 0.0 5044.59 2.99 125.0 6.68 938.08 60019.14 131521.90 28.36 97.15 0.37 0.49 0.12 1.61 0.00 0.26 0.00 2.0 2.0 1.60 1.60 0.0 0.0 0.0 5044.59 2.99 131.0 6.68 938.08 60019.14 131521.90 28.36 97.15 0.37 0.49 0.12 1.61 0.00 0.26 0.00 0.0 0.0 0.00 0.00 0.0 0.0 0.0 5044.59 2.99 137.0 6.68 938.08 60019.14 131521.90 28.36 97.15 0.37 0.49 0.12 1.61 0.00 0.26 0.00 4.0 0.0 0.00 2.92 0.0 0.0 0.0 5044.59 2.99 143.0 6.68 938.08 60019.14 131521.90 28.36 97.15 0.37 0.49 0.12 1.61 0.00 0.26 0.00 2.0 0.0 0.00 1.40 0.0 0.0 0.0 4562.01 2.50 149.0 4.97 680.77 75425.61 162394.01 23.93 93.87 1.56 0.81 0.00 3.76 0.0 0.00 0.00 4.0 1.0 0.67 2.69 0.0 0.0 0.0 4562.01 2.50 154.0 4.97 680.77 75425.61 162394.01 23.93 93.87 1.56 0.81 0.00 3.76 0.0 0.00 0.00 5.0 5.0 3.24 3.24 0.0 0.0 0.0 4562.01 2.50 160.0 4.97 680.77 75425.61 162394.01 23.93 93.87 1.56 0.81 0.00 3.76 0.0 0.00 0.00 1.0 0.0 0.00 0.62 0.0 0.0 1.0 4562.01 2.50 166.0 4.97 680.77 75425.61 162394.01 23.93 93.87 1.56 0.81 0.00 3.76 0.0 0.00 0.00 2.0 0.0 0.00 1.20 0.0 0.0 1.0 4562.01 2.50 172.0 4.97 680.77 75425.61 162394.01 23.93 93.87 1.56 0.81 0.00 3.76 0.0 0.00 0.00 3.0 1.0 0.58 1.74 0.0 0.0 1.0 4742.0 2.54 178.0 9.59 936.0 84688.0 170400.0 25.0 93.72 0.97 0.78 0.11 3.52 0.00 0.76 0.15 6.0 2.0 1.12 3.37 0.0 0.0 1.0 4744.0 2.52 182.0 10.96 780.0 78630.0 174200.0 20.7 91.74 1.52 2.21 0.19 3.39 0.0 0.95 0.0 0.0 0.0 0.00 0.00 0.0 0.0 1.0 4744.0 2.52 187.0 10.96 780.0 78630.0 174200.0 20.7 91.74 1.52 2.21 0.19 3.39 0.0 0.95 0.0 6.0 1.0 0.54 3.21 0.0 0.0 1.0 4744.0 2.52 191.0 10.96 780.0 78630.0 174200.0 20.7 91.74 1.52 2.21 0.19 3.39 0.0 0.95 0.0 1.0 0.0 0.00 0.52 0.0 0.0 1.0 4744.0 2.52 195.0 10.96 780.0 78630.0 174200.0 20.7 91.74 1.52 2.21 0.19 3.39 0.0 0.95 0.0 1.0 1.0 0.51 0.51 0.0 0.0 1.0 4744.0 2.52 200.0 10.96 780.0 78630.0 174200.0 20.7 91.74 1.52 2.21 0.19 3.39 0.0 0.95 0.0 2.0 0.0 0.00 1.00 0.0 0.0 1.0 4744.0 2.52 204.0 10.96 780.0 78630.0 174200.0 20.7 91.74 1.52 2.21 0.19 3.39 0.0 0.95 0.0 4.0 1.0 0.49 1.96 1.0 0.0 1.0 MULTIPOLYGON (((-80.03822 40.55349, -80.04368 ...
3 42003416000 -79.8113 40.5440 -79.7637 40.5630 4160 Allegheny County, Pennsylvania 1775.93 4.99 121.0 15.30 557.90 39073.61 77316.48 17.60 99.50 0.06 0.11 0.00 0.00 0.00 0.33 0.00 1.0 1.0 0.83 0.83 0.0 0.0 0.0 1775.93 4.99 123.0 15.30 557.90 39073.61 77316.48 17.60 99.50 0.06 0.11 0.00 0.00 0.00 0.33 0.00 3.0 3.0 2.44 2.44 0.0 0.0 0.0 1775.93 4.99 125.0 15.30 557.90 39073.61 77316.48 17.60 99.50 0.06 0.11 0.00 0.00 0.00 0.33 0.00 3.0 3.0 2.41 2.41 0.0 0.0 0.0 1775.93 4.99 127.0 15.30 557.90 39073.61 77316.48 17.60 99.50 0.06 0.11 0.00 0.00 0.00 0.33 0.00 4.0 3.0 2.37 3.16 0.0 0.0 0.0 1775.93 4.99 128.0 15.30 557.90 39073.61 77316.48 17.60 99.50 0.06 0.11 0.00 0.00 0.00 0.33 0.00 2.0 1.0 0.78 1.56 0.0 0.0 0.0 1569.13 7.82 130.0 18.14 546.12 43434.32 96418.92 27.51 98.74 0.00 0.00 0.13 0.00 0.0 1.13 0.00 7.0 6.0 4.61 5.38 0.0 0.0 0.0 1569.13 7.82 132.0 18.14 546.12 43434.32 96418.92 27.51 98.74 0.00 0.00 0.13 0.00 0.0 1.13 0.00 7.0 4.0 3.03 5.31 0.0 0.0 0.0 1569.13 7.82 134.0 18.14 546.12 43434.32 96418.92 27.51 98.74 0.00 0.00 0.13 0.00 0.0 1.13 0.00 0.0 0.0 0.00 0.00 0.0 0.0 1.0 1569.13 7.82 135.0 18.14 546.12 43434.32 96418.92 27.51 98.74 0.00 0.00 0.13 0.00 0.0 1.13 0.00 2.0 2.0 1.48 1.48 0.0 0.0 1.0 1569.13 7.82 137.0 18.14 546.12 43434.32 96418.92 27.51 98.74 0.00 0.00 0.13 0.00 0.0 1.13 0.00 5.0 4.0 2.92 3.64 0.0 0.0 1.0 1636.0 5.00 139.0 17.48 766.0 45491.0 95100.0 26.4 99.08 0.18 0.61 0.00 0.06 0.00 0.06 0.00 6.0 4.0 2.88 4.32 0.0 0.0 1.0 1643.0 6.16 141.0 23.59 680.0 48438.0 94900.0 19.7 99.45 0.00 0.00 0.00 0.00 0.0 0.55 0.0 1.0 1.0 0.71 0.71 0.0 0.0 1.0 1643.0 6.16 144.0 23.59 680.0 48438.0 94900.0 19.7 99.45 0.00 0.00 0.00 0.00 0.0 0.55 0.0 3.0 3.0 2.09 2.09 0.0 0.0 1.0 1643.0 6.16 146.0 23.59 680.0 48438.0 94900.0 19.7 99.45 0.00 0.00 0.00 0.00 0.0 0.55 0.0 4.0 2.0 1.37 2.74 0.0 0.0 1.0 1643.0 6.16 148.0 23.59 680.0 48438.0 94900.0 19.7 99.45 0.00 0.00 0.00 0.00 0.0 0.55 0.0 5.0 2.0 1.35 3.37 0.0 0.0 1.0 1643.0 6.16 151.0 23.59 680.0 48438.0 94900.0 19.7 99.45 0.00 0.00 0.00 0.00 0.0 0.55 0.0 3.0 2.0 1.33 1.99 0.0 0.0 1.0 1643.0 6.16 153.0 23.59 680.0 48438.0 94900.0 19.7 99.45 0.00 0.00 0.00 0.00 0.0 0.55 0.0 1.0 1.0 0.65 0.65 1.0 0.0 1.0 MULTIPOLYGON (((-79.76595 40.55092, -79.76542 ...
4 42003417200 -79.7948 40.5341 -79.7642 40.5443 4172 Allegheny County, Pennsylvania 1428.03 11.95 321.0 48.27 409.00 34306.14 66400.38 22.10 98.46 0.63 0.28 0.07 0.07 0.00 0.35 0.14 9.0 7.0 2.18 2.80 0.0 0.0 0.0 1428.03 11.95 322.0 48.27 409.00 34306.14 66400.38 22.10 98.46 0.63 0.28 0.07 0.07 0.00 0.35 0.14 12.0 4.0 1.24 3.73 0.0 0.0 0.0 1428.03 11.95 323.0 48.27 409.00 34306.14 66400.38 22.10 98.46 0.63 0.28 0.07 0.07 0.00 0.35 0.14 17.0 9.0 2.79 5.27 0.0 0.0 0.0 1428.03 11.95 324.0 48.27 409.00 34306.14 66400.38 22.10 98.46 0.63 0.28 0.07 0.07 0.00 0.35 0.14 12.0 7.0 2.16 3.71 0.0 0.0 0.0 1428.03 11.95 325.0 48.27 409.00 34306.14 66400.38 22.10 98.46 0.63 0.28 0.07 0.07 0.00 0.35 0.14 12.0 9.0 2.77 3.70 0.0 0.0 0.0 1345.03 9.52 326.0 41.37 716.00 40257.36 81200.46 25.00 90.63 0.00 7.43 0.00 0.00 0.0 1.93 0.00 11.0 11.0 3.38 3.38 0.0 0.0 0.0 1345.03 9.52 326.0 41.37 716.00 40257.36 81200.46 25.00 90.63 0.00 7.43 0.00 0.00 0.0 1.93 0.00 14.0 12.0 3.68 4.29 0.0 0.0 0.0 1345.03 9.52 327.0 41.37 716.00 40257.36 81200.46 25.00 90.63 0.00 7.43 0.00 0.00 0.0 1.93 0.00 1.0 0.0 0.00 0.31 0.0 0.0 1.0 1345.03 9.52 328.0 41.37 716.00 40257.36 81200.46 25.00 90.63 0.00 7.43 0.00 0.00 0.0 1.93 0.00 1.0 0.0 0.00 0.30 0.0 0.0 1.0 1345.03 9.52 329.0 41.37 716.00 40257.36 81200.46 25.00 90.63 0.00 7.43 0.00 0.00 0.0 1.93 0.00 9.0 2.0 0.61 2.73 0.0 0.0 1.0 1260.0 1.32 330.0 52.13 739.0 39934.0 96500.0 29.3 96.43 1.19 0.79 0.08 0.08 0.00 1.27 0.16 11.0 6.0 1.82 3.33 0.0 0.0 1.0 1253.0 8.36 336.0 46.57 625.0 32614.0 78300.0 33.0 97.69 0.96 1.36 0.00 0.00 0.0 0.00 0.0 11.0 5.0 1.49 3.27 0.0 0.0 1.0 1253.0 8.36 343.0 46.57 625.0 32614.0 78300.0 33.0 97.69 0.96 1.36 0.00 0.00 0.0 0.00 0.0 6.0 4.0 1.17 1.75 0.0 0.0 1.0 1253.0 8.36 349.0 46.57 625.0 32614.0 78300.0 33.0 97.69 0.96 1.36 0.00 0.00 0.0 0.00 0.0 6.0 5.0 1.43 1.72 0.0 0.0 1.0 1253.0 8.36 355.0 46.57 625.0 32614.0 78300.0 33.0 97.69 0.96 1.36 0.00 0.00 0.0 0.00 0.0 13.0 8.0 2.25 3.66 0.0 0.0 1.0 1253.0 8.36 362.0 46.57 625.0 32614.0 78300.0 33.0 97.69 0.96 1.36 0.00 0.00 0.0 0.00 0.0 8.0 6.0 1.66 2.21 0.0 0.0 1.0 1253.0 8.36 368.0 46.57 625.0 32614.0 78300.0 33.0 97.69 0.96 1.36 0.00 0.00 0.0 0.00 0.0 7.0 3.0 0.82 1.90 1.0 0.0 1.0 MULTIPOLYGON (((-79.77114 40.54415, -79.76417 ...

1.1.2 Explore and trim the data

In [4]:
# constructing the filter with regex
filter_ = eviction["pl"].str.match(r"Philadelphia", case=False)

# filtering original data
eviction_phl = eviction[filter_]
In [5]:
eviction_phl
Out[5]:
GEOID west south east north n pl p-00 pr-00 roh-00 pro-00 mgr-00 mhi-00 mpv-00 rb-00 pw-00 paa-00 ph-00 pai-00 pa-00 pnp-00 pm-00 po-00 ef-00 e-00 er-00 efr-00 lf-00 imputed-00 subbed-00 p-01 pr-01 roh-01 pro-01 mgr-01 mhi-01 mpv-01 rb-01 pw-01 paa-01 ph-01 pai-01 pa-01 pnp-01 pm-01 po-01 ef-01 e-01 er-01 efr-01 lf-01 imputed-01 subbed-01 p-02 pr-02 roh-02 pro-02 mgr-02 mhi-02 mpv-02 rb-02 pw-02 paa-02 ph-02 pai-02 pa-02 pnp-02 pm-02 po-02 ef-02 e-02 er-02 efr-02 lf-02 imputed-02 subbed-02 p-03 pr-03 roh-03 pro-03 mgr-03 mhi-03 mpv-03 rb-03 pw-03 paa-03 ph-03 pai-03 pa-03 pnp-03 pm-03 po-03 ef-03 e-03 er-03 efr-03 lf-03 imputed-03 subbed-03 p-04 pr-04 roh-04 pro-04 mgr-04 mhi-04 mpv-04 rb-04 pw-04 paa-04 ph-04 pai-04 pa-04 pnp-04 pm-04 po-04 ef-04 e-04 er-04 efr-04 lf-04 imputed-04 subbed-04 p-05 pr-05 roh-05 pro-05 mgr-05 mhi-05 mpv-05 rb-05 pw-05 paa-05 ph-05 pai-05 pa-05 pnp-05 pm-05 po-05 ef-05 e-05 er-05 efr-05 lf-05 imputed-05 subbed-05 p-06 pr-06 roh-06 pro-06 mgr-06 mhi-06 mpv-06 rb-06 pw-06 paa-06 ph-06 pai-06 pa-06 pnp-06 pm-06 po-06 ef-06 e-06 er-06 efr-06 lf-06 imputed-06 subbed-06 p-07 pr-07 roh-07 pro-07 mgr-07 mhi-07 mpv-07 rb-07 pw-07 paa-07 ph-07 pai-07 pa-07 pnp-07 pm-07 po-07 ef-07 e-07 er-07 efr-07 lf-07 imputed-07 subbed-07 p-08 pr-08 roh-08 pro-08 mgr-08 mhi-08 mpv-08 rb-08 pw-08 paa-08 ph-08 pai-08 pa-08 pnp-08 pm-08 po-08 ef-08 e-08 er-08 efr-08 lf-08 imputed-08 subbed-08 p-09 pr-09 roh-09 pro-09 mgr-09 mhi-09 mpv-09 rb-09 pw-09 paa-09 ph-09 pai-09 pa-09 pnp-09 pm-09 po-09 ef-09 e-09 er-09 efr-09 lf-09 imputed-09 subbed-09 p-10 pr-10 roh-10 pro-10 mgr-10 mhi-10 mpv-10 rb-10 pw-10 paa-10 ph-10 pai-10 pa-10 pnp-10 pm-10 po-10 ef-10 e-10 er-10 efr-10 lf-10 imputed-10 subbed-10 p-11 pr-11 roh-11 pro-11 mgr-11 mhi-11 mpv-11 rb-11 pw-11 paa-11 ph-11 pai-11 pa-11 pnp-11 pm-11 po-11 ef-11 e-11 er-11 efr-11 lf-11 imputed-11 subbed-11 p-12 pr-12 roh-12 pro-12 mgr-12 mhi-12 mpv-12 rb-12 pw-12 paa-12 ph-12 pai-12 pa-12 pnp-12 pm-12 po-12 ef-12 e-12 er-12 efr-12 lf-12 imputed-12 subbed-12 p-13 pr-13 roh-13 pro-13 mgr-13 mhi-13 mpv-13 rb-13 pw-13 paa-13 ph-13 pai-13 pa-13 pnp-13 pm-13 po-13 ef-13 e-13 er-13 efr-13 lf-13 imputed-13 subbed-13 p-14 pr-14 roh-14 pro-14 mgr-14 mhi-14 mpv-14 rb-14 pw-14 paa-14 ph-14 pai-14 pa-14 pnp-14 pm-14 po-14 ef-14 e-14 er-14 efr-14 lf-14 imputed-14 subbed-14 p-15 pr-15 roh-15 pro-15 mgr-15 mhi-15 mpv-15 rb-15 pw-15 paa-15 ph-15 pai-15 pa-15 pnp-15 pm-15 po-15 ef-15 e-15 er-15 efr-15 lf-15 imputed-15 subbed-15 p-16 pr-16 roh-16 pro-16 mgr-16 mhi-16 mpv-16 rb-16 pw-16 paa-16 ph-16 pai-16 pa-16 pnp-16 pm-16 po-16 ef-16 e-16 er-16 efr-16 lf-16 imputed-16 subbed-16 geometry
435 42101000100 -75.1523 39.9481 -75.1415 39.9569 1 Philadelphia County, Pennsylvania 2646.71 9.26 1347.0 77.12 959.0 48886.0 189700.0 24.5 78.45 12.42 3.47 0.23 3.92 0.00 1.40 0.11 NaN NaN NaN NaN 0.0 0.0 0.0 2646.71 9.26 1360.0 77.12 959.0 48886.0 189700.0 24.5 78.45 12.42 3.47 0.23 3.92 0.00 1.40 0.11 NaN NaN NaN NaN 0.0 0.0 0.0 2646.71 9.26 1374.0 77.12 959.0 48886.0 189700.0 24.5 78.45 12.42 3.47 0.23 3.92 0.00 1.40 0.11 21.0 19.0 1.38 1.53 1.0 0.0 0.0 2646.71 9.26 1388.0 77.12 959.0 48886.0 189700.0 24.5 78.45 12.42 3.47 0.23 3.92 0.00 1.40 0.11 25.0 21.0 1.51 1.80 1.0 0.0 0.0 2646.71 9.26 1401.0 77.12 959.0 48886.0 189700.0 24.5 78.45 12.42 3.47 0.23 3.92 0.00 1.40 0.11 25.0 24.0 1.71 1.78 1.0 0.0 0.0 3310.88 12.11 1415.0 57.97 1357.0 73272.0 332500.0 25.6 83.98 7.24 4.40 0.00 3.08 0.0 0.45 0.84 18.0 15.0 1.06 1.27 1.0 0.0 0.0 3310.88 12.11 1428.0 57.97 1357.0 73272.0 332500.0 25.6 83.98 7.24 4.40 0.00 3.08 0.0 0.45 0.84 13.0 10.0 0.70 0.91 1.0 0.0 0.0 3310.88 12.11 1442.0 57.97 1357.0 73272.0 332500.0 25.6 83.98 7.24 4.40 0.00 3.08 0.0 0.45 0.84 53.0 20.0 1.39 3.68 0.0 0.0 1.0 3310.88 12.11 1456.0 57.97 1357.0 73272.0 332500.0 25.6 83.98 7.24 4.40 0.00 3.08 0.0 0.45 0.84 30.0 17.0 1.17 2.06 0.0 0.0 1.0 3310.88 12.11 1469.0 57.97 1357.0 73272.0 332500.0 25.6 83.98 7.24 4.40 0.00 3.08 0.0 0.45 0.84 25.0 11.0 0.75 1.70 0.0 0.0 1.0 3478.0 3.13 1483.0 64.45 1491.0 75505.0 340800.0 27.5 83.09 5.95 3.62 0.14 4.97 0.06 2.01 0.14 24.0 18.0 1.21 1.62 0.0 0.0 1.0 3608.0 0.00 1524.0 71.19 1545.0 92207.0 351600.0 24.3 73.45 10.01 5.10 0.17 8.79 0.0 2.49 0.00 23.0 11.0 0.72 1.51 0.0 0.0 1.0 3608.0 0.00 1565.0 71.19 1545.0 92207.0 351600.0 24.3 73.45 10.01 5.10 0.17 8.79 0.0 2.49 0.00 22.0 7.0 0.45 1.41 0.0 0.0 1.0 3608.0 0.00 1606.0 71.19 1545.0 92207.0 351600.0 24.3 73.45 10.01 5.10 0.17 8.79 0.0 2.49 0.00 25.0 12.0 0.75 1.56 0.0 0.0 1.0 3608.0 0.00 1646.0 71.19 1545.0 92207.0 351600.0 24.3 73.45 10.01 5.10 0.17 8.79 0.0 2.49 0.00 26.0 12.0 0.73 1.58 0.0 0.0 1.0 3608.0 0.00 1687.0 71.19 1545.0 92207.0 351600.0 24.3 73.45 10.01 5.10 0.17 8.79 0.0 2.49 0.00 31.0 12.0 0.71 1.84 0.0 0.0 1.0 3608.0 0.00 1728.0 71.19 1545.0 92207.0 351600.0 24.3 73.45 10.01 5.10 0.17 8.79 0.0 2.49 0.00 25.0 16.0 0.93 1.45 0.0 0.0 1.0 MULTIPOLYGON (((-75.14161 39.95549, -75.14163 ...
436 42101000200 -75.1631 39.9529 -75.1511 39.9578 2 Philadelphia County, Pennsylvania 1362.00 56.42 374.0 81.48 421.0 8349.0 55600.0 31.2 11.16 5.21 1.69 0.07 79.59 0.07 2.20 0.00 NaN NaN NaN NaN 0.0 0.0 0.0 1362.00 56.42 415.0 81.48 421.0 8349.0 55600.0 31.2 11.16 5.21 1.69 0.07 79.59 0.07 2.20 0.00 NaN NaN NaN NaN 0.0 0.0 0.0 1362.00 56.42 455.0 81.48 421.0 8349.0 55600.0 31.2 11.16 5.21 1.69 0.07 79.59 0.07 2.20 0.00 4.0 4.0 0.88 0.88 1.0 0.0 0.0 1362.00 56.42 496.0 81.48 421.0 8349.0 55600.0 31.2 11.16 5.21 1.69 0.07 79.59 0.07 2.20 0.00 3.0 3.0 0.60 0.60 1.0 0.0 0.0 1362.00 56.42 537.0 81.48 421.0 8349.0 55600.0 31.2 11.16 5.21 1.69 0.07 79.59 0.07 2.20 0.00 6.0 6.0 1.12 1.12 1.0 0.0 0.0 1633.00 3.45 578.0 56.04 675.0 42083.0 232800.0 24.7 19.29 2.82 1.22 0.00 76.00 0.0 0.67 0.00 1.0 0.0 0.00 0.17 1.0 0.0 0.0 1633.00 3.45 618.0 56.04 675.0 42083.0 232800.0 24.7 19.29 2.82 1.22 0.00 76.00 0.0 0.67 0.00 6.0 6.0 0.97 0.97 1.0 0.0 0.0 1633.00 3.45 659.0 56.04 675.0 42083.0 232800.0 24.7 19.29 2.82 1.22 0.00 76.00 0.0 0.67 0.00 9.0 7.0 1.06 1.37 0.0 0.0 1.0 1633.00 3.45 700.0 56.04 675.0 42083.0 232800.0 24.7 19.29 2.82 1.22 0.00 76.00 0.0 0.67 0.00 11.0 7.0 1.00 1.57 0.0 0.0 1.0 1633.00 3.45 740.0 56.04 675.0 42083.0 232800.0 24.7 19.29 2.82 1.22 0.00 76.00 0.0 0.67 0.00 6.0 5.0 0.68 0.81 0.0 0.0 1.0 2937.0 5.07 781.0 68.21 905.0 49928.0 261100.0 26.4 22.64 9.67 2.69 0.10 63.16 0.03 1.40 0.31 6.0 1.0 0.13 0.77 0.0 0.0 1.0 2331.0 15.78 792.0 60.27 1263.0 59891.0 265400.0 28.1 38.91 6.05 1.54 0.47 50.75 0.0 2.27 0.00 9.0 6.0 0.76 1.14 0.0 0.0 1.0 2331.0 15.78 802.0 60.27 1263.0 59891.0 265400.0 28.1 38.91 6.05 1.54 0.47 50.75 0.0 2.27 0.00 8.0 3.0 0.37 1.00 0.0 0.0 1.0 2331.0 15.78 813.0 60.27 1263.0 59891.0 265400.0 28.1 38.91 6.05 1.54 0.47 50.75 0.0 2.27 0.00 14.0 10.0 1.23 1.72 0.0 0.0 1.0 2331.0 15.78 824.0 60.27 1263.0 59891.0 265400.0 28.1 38.91 6.05 1.54 0.47 50.75 0.0 2.27 0.00 5.0 3.0 0.36 0.61 0.0 0.0 1.0 2331.0 15.78 834.0 60.27 1263.0 59891.0 265400.0 28.1 38.91 6.05 1.54 0.47 50.75 0.0 2.27 0.00 10.0 9.0 1.08 1.20 0.0 0.0 1.0 2331.0 15.78 845.0 60.27 1263.0 59891.0 265400.0 28.1 38.91 6.05 1.54 0.47 50.75 0.0 2.27 0.00 11.0 8.0 0.95 1.30 0.0 0.0 1.0 MULTIPOLYGON (((-75.15122 39.95686, -75.15167 ...
437 42101000300 -75.1798 39.9544 -75.1623 39.9599 3 Philadelphia County, Pennsylvania 2570.00 12.16 861.0 69.49 688.0 40625.0 233900.0 29.0 70.86 14.67 3.81 0.27 7.00 0.08 3.04 0.27 NaN NaN NaN NaN 0.0 0.0 0.0 2570.00 12.16 915.0 69.49 688.0 40625.0 233900.0 29.0 70.86 14.67 3.81 0.27 7.00 0.08 3.04 0.27 NaN NaN NaN NaN 0.0 0.0 0.0 2570.00 12.16 969.0 69.49 688.0 40625.0 233900.0 29.0 70.86 14.67 3.81 0.27 7.00 0.08 3.04 0.27 14.0 12.0 1.24 1.44 1.0 0.0 0.0 2570.00 12.16 1023.0 69.49 688.0 40625.0 233900.0 29.0 70.86 14.67 3.81 0.27 7.00 0.08 3.04 0.27 21.0 17.0 1.66 2.05 1.0 0.0 0.0 2570.00 12.16 1077.0 69.49 688.0 40625.0 233900.0 29.0 70.86 14.67 3.81 0.27 7.00 0.08 3.04 0.27 23.0 23.0 2.13 2.13 1.0 0.0 0.0 4497.00 1.63 1132.0 65.66 1184.0 59189.0 438500.0 24.8 67.44 10.52 5.69 0.20 14.14 0.0 1.29 0.71 12.0 10.0 0.88 1.06 1.0 0.0 0.0 4497.00 1.63 1186.0 65.66 1184.0 59189.0 438500.0 24.8 67.44 10.52 5.69 0.20 14.14 0.0 1.29 0.71 19.0 16.0 1.35 1.60 1.0 0.0 0.0 4497.00 1.63 1240.0 65.66 1184.0 59189.0 438500.0 24.8 67.44 10.52 5.69 0.20 14.14 0.0 1.29 0.71 21.0 7.0 0.56 1.69 0.0 0.0 1.0 4497.00 1.63 1294.0 65.66 1184.0 59189.0 438500.0 24.8 67.44 10.52 5.69 0.20 14.14 0.0 1.29 0.71 25.0 11.0 0.85 1.93 0.0 0.0 1.0 4497.00 1.63 1348.0 65.66 1184.0 59189.0 438500.0 24.8 67.44 10.52 5.69 0.20 14.14 0.0 1.29 0.71 27.0 12.0 0.89 2.00 0.0 0.0 1.0 3169.0 7.20 1402.0 75.58 1827.0 71250.0 451800.0 28.0 72.26 10.22 4.26 0.03 10.35 0.03 2.52 0.32 24.0 13.0 0.93 1.71 0.0 0.0 1.0 3405.0 4.17 1489.0 70.47 1938.0 81950.0 469900.0 26.2 72.19 5.26 8.75 0.00 12.04 0.0 1.76 0.00 21.0 8.0 0.54 1.41 0.0 0.0 1.0 3405.0 4.17 1575.0 70.47 1938.0 81950.0 469900.0 26.2 72.19 5.26 8.75 0.00 12.04 0.0 1.76 0.00 27.0 12.0 0.76 1.71 0.0 0.0 1.0 3405.0 4.17 1662.0 70.47 1938.0 81950.0 469900.0 26.2 72.19 5.26 8.75 0.00 12.04 0.0 1.76 0.00 31.0 10.0 0.60 1.87 0.0 0.0 1.0 3405.0 4.17 1749.0 70.47 1938.0 81950.0 469900.0 26.2 72.19 5.26 8.75 0.00 12.04 0.0 1.76 0.00 27.0 14.0 0.80 1.54 0.0 0.0 1.0 3405.0 4.17 1835.0 70.47 1938.0 81950.0 469900.0 26.2 72.19 5.26 8.75 0.00 12.04 0.0 1.76 0.00 18.0 5.0 0.27 0.98 0.0 0.0 1.0 3405.0 4.17 1922.0 70.47 1938.0 81950.0 469900.0 26.2 72.19 5.26 8.75 0.00 12.04 0.0 1.76 0.00 26.0 14.0 0.73 1.35 0.0 0.0 1.0 MULTIPOLYGON (((-75.16234 39.95782, -75.16237 ...
438 42101000801 -75.1833 39.9486 -75.1773 39.9515 8.01 Philadelphia County, Pennsylvania 1478.00 14.40 810.0 73.65 933.0 42346.0 265200.0 27.6 81.67 2.97 3.50 0.04 10.08 0.04 1.26 0.45 NaN NaN NaN NaN 0.0 0.0 0.0 1478.00 14.40 801.0 73.65 933.0 42346.0 265200.0 27.6 81.67 2.97 3.50 0.04 10.08 0.04 1.26 0.45 NaN NaN NaN NaN 0.0 0.0 0.0 1478.00 14.40 793.0 73.65 933.0 42346.0 265200.0 27.6 81.67 2.97 3.50 0.04 10.08 0.04 1.26 0.45 7.0 5.0 0.63 0.88 1.0 0.0 0.0 1478.00 14.40 784.0 73.65 933.0 42346.0 265200.0 27.6 81.67 2.97 3.50 0.04 10.08 0.04 1.26 0.45 19.0 13.0 1.66 2.42 1.0 0.0 0.0 1478.00 14.40 775.0 73.65 933.0 42346.0 265200.0 27.6 81.67 2.97 3.50 0.04 10.08 0.04 1.26 0.45 17.0 14.0 1.81 2.19 1.0 0.0 0.0 1344.37 11.10 767.0 66.11 1393.0 61590.0 431800.0 28.2 86.58 1.05 3.14 0.00 8.16 0.0 0.88 0.18 10.0 6.0 0.78 1.30 1.0 0.0 0.0 1344.37 11.10 758.0 66.11 1393.0 61590.0 431800.0 28.2 86.58 1.05 3.14 0.00 8.16 0.0 0.88 0.18 12.0 7.0 0.92 1.58 1.0 0.0 0.0 1344.37 11.10 749.0 66.11 1393.0 61590.0 431800.0 28.2 86.58 1.05 3.14 0.00 8.16 0.0 0.88 0.18 12.0 5.0 0.67 1.60 0.0 0.0 1.0 1344.37 11.10 740.0 66.11 1393.0 61590.0 431800.0 28.2 86.58 1.05 3.14 0.00 8.16 0.0 0.88 0.18 11.0 4.0 0.54 1.49 0.0 0.0 1.0 1344.37 11.10 732.0 66.11 1393.0 61590.0 431800.0 28.2 86.58 1.05 3.14 0.00 8.16 0.0 0.88 0.18 10.0 2.0 0.27 1.37 0.0 0.0 1.0 1562.0 2.46 723.0 71.09 2001.0 83125.0 459900.0 25.9 78.04 2.94 5.76 0.00 10.82 0.26 1.92 0.26 14.0 4.0 0.55 1.94 0.0 0.0 1.0 1692.0 3.25 734.0 74.87 2219.0 81620.0 656300.0 24.7 75.18 10.64 4.91 0.00 4.08 0.0 1.42 3.78 13.0 7.0 0.95 1.77 0.0 0.0 1.0 1692.0 3.25 746.0 74.87 2219.0 81620.0 656300.0 24.7 75.18 10.64 4.91 0.00 4.08 0.0 1.42 3.78 7.0 0.0 0.00 0.94 0.0 0.0 1.0 1692.0 3.25 757.0 74.87 2219.0 81620.0 656300.0 24.7 75.18 10.64 4.91 0.00 4.08 0.0 1.42 3.78 15.0 3.0 0.40 1.98 0.0 0.0 1.0 1692.0 3.25 768.0 74.87 2219.0 81620.0 656300.0 24.7 75.18 10.64 4.91 0.00 4.08 0.0 1.42 3.78 10.0 4.0 0.52 1.30 0.0 0.0 1.0 1692.0 3.25 780.0 74.87 2219.0 81620.0 656300.0 24.7 75.18 10.64 4.91 0.00 4.08 0.0 1.42 3.78 16.0 8.0 1.03 2.05 0.0 0.0 1.0 1692.0 3.25 791.0 74.87 2219.0 81620.0 656300.0 24.7 75.18 10.64 4.91 0.00 4.08 0.0 1.42 3.78 13.0 4.0 0.51 1.64 0.0 0.0 1.0 MULTIPOLYGON (((-75.17732 39.95096, -75.17784 ...
439 42101000804 -75.1712 39.9470 -75.1643 39.9501 8.04 Philadelphia County, Pennsylvania 3301.00 14.40 2058.0 73.65 933.0 42346.0 265200.0 27.6 81.67 2.97 3.50 0.04 10.08 0.04 1.26 0.45 NaN NaN NaN NaN 0.0 0.0 0.0 3301.00 14.40 2050.0 73.65 933.0 42346.0 265200.0 27.6 81.67 2.97 3.50 0.04 10.08 0.04 1.26 0.45 NaN NaN NaN NaN 0.0 0.0 0.0 3301.00 14.40 2042.0 73.65 933.0 42346.0 265200.0 27.6 81.67 2.97 3.50 0.04 10.08 0.04 1.26 0.45 22.0 18.0 0.88 1.08 1.0 0.0 0.0 3301.00 14.40 2033.0 73.65 933.0 42346.0 265200.0 27.6 81.67 2.97 3.50 0.04 10.08 0.04 1.26 0.45 31.0 21.0 1.03 1.52 1.0 0.0 0.0 3301.00 14.40 2025.0 73.65 933.0 42346.0 265200.0 27.6 81.67 2.97 3.50 0.04 10.08 0.04 1.26 0.45 18.0 15.0 0.74 0.89 1.0 0.0 0.0 3002.54 11.10 2017.0 66.11 1393.0 61590.0 431800.0 28.2 86.58 1.05 3.14 0.00 8.16 0.0 0.88 0.18 28.0 19.0 0.94 1.39 1.0 0.0 0.0 3002.54 11.10 2009.0 66.11 1393.0 61590.0 431800.0 28.2 86.58 1.05 3.14 0.00 8.16 0.0 0.88 0.18 14.0 13.0 0.65 0.70 1.0 0.0 0.0 3002.54 11.10 2001.0 66.11 1393.0 61590.0 431800.0 28.2 86.58 1.05 3.14 0.00 8.16 0.0 0.88 0.18 33.0 11.0 0.55 1.65 0.0 0.0 1.0 3002.54 11.10 1992.0 66.11 1393.0 61590.0 431800.0 28.2 86.58 1.05 3.14 0.00 8.16 0.0 0.88 0.18 17.0 4.0 0.20 0.85 0.0 0.0 1.0 3002.54 11.10 1984.0 66.11 1393.0 61590.0 431800.0 28.2 86.58 1.05 3.14 0.00 8.16 0.0 0.88 0.18 27.0 8.0 0.40 1.36 0.0 0.0 1.0 3609.0 7.69 1976.0 76.32 1562.0 75357.0 330200.0 26.0 78.55 2.72 4.96 0.03 11.75 0.03 1.72 0.25 43.0 13.0 0.66 2.18 0.0 0.0 1.0 3746.0 0.00 2000.0 75.43 1816.0 96250.0 465500.0 23.7 67.43 4.51 13.59 0.35 13.59 0.0 0.19 0.35 38.0 9.0 0.45 1.90 0.0 0.0 1.0 3746.0 0.00 2024.0 75.43 1816.0 96250.0 465500.0 23.7 67.43 4.51 13.59 0.35 13.59 0.0 0.19 0.35 31.0 16.0 0.79 1.53 0.0 0.0 1.0 3746.0 0.00 2048.0 75.43 1816.0 96250.0 465500.0 23.7 67.43 4.51 13.59 0.35 13.59 0.0 0.19 0.35 27.0 8.0 0.39 1.32 0.0 0.0 1.0 3746.0 0.00 2072.0 75.43 1816.0 96250.0 465500.0 23.7 67.43 4.51 13.59 0.35 13.59 0.0 0.19 0.35 28.0 11.0 0.53 1.35 0.0 0.0 1.0 3746.0 0.00 2096.0 75.43 1816.0 96250.0 465500.0 23.7 67.43 4.51 13.59 0.35 13.59 0.0 0.19 0.35 18.0 7.0 0.33 0.86 0.0 0.0 1.0 3746.0 0.00 2120.0 75.43 1816.0 96250.0 465500.0 23.7 67.43 4.51 13.59 0.35 13.59 0.0 0.19 0.35 22.0 7.0 0.33 1.04 0.0 0.0 1.0 MULTIPOLYGON (((-75.17118 39.94778, -75.17102 ...
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
3200 42101017800 -75.1255 39.9869 -75.1095 39.9965 178 Philadelphia County, Pennsylvania 6340.00 54.31 899.0 42.81 516.0 14793.0 26000.0 50.1 41.53 19.89 33.11 0.25 3.47 0.00 1.69 0.06 NaN NaN NaN NaN 0.0 0.0 0.0 6340.00 54.31 933.0 42.81 516.0 14793.0 26000.0 50.1 41.53 19.89 33.11 0.25 3.47 0.00 1.69 0.06 NaN NaN NaN NaN 0.0 0.0 0.0 6340.00 54.31 967.0 42.81 516.0 14793.0 26000.0 50.1 41.53 19.89 33.11 0.25 3.47 0.00 1.69 0.06 52.0 44.0 4.55 5.38 1.0 0.0 0.0 6340.00 54.31 1001.0 42.81 516.0 14793.0 26000.0 50.1 41.53 19.89 33.11 0.25 3.47 0.00 1.69 0.06 124.0 105.0 10.49 12.38 1.0 0.0 0.0 6340.00 54.31 1035.0 42.81 516.0 14793.0 26000.0 50.1 41.53 19.89 33.11 0.25 3.47 0.00 1.69 0.06 146.0 128.0 12.36 14.10 1.0 0.0 0.0 6563.00 52.86 1070.0 53.62 798.0 20112.0 49800.0 42.2 16.67 21.80 51.03 1.20 5.13 0.0 3.02 1.14 134.0 117.0 10.94 12.53 1.0 0.0 0.0 6563.00 52.86 1104.0 53.62 798.0 20112.0 49800.0 42.2 16.67 21.80 51.03 1.20 5.13 0.0 3.02 1.14 141.0 122.0 11.05 12.78 1.0 0.0 0.0 6563.00 52.86 1138.0 53.62 798.0 20112.0 49800.0 42.2 16.67 21.80 51.03 1.20 5.13 0.0 3.02 1.14 165.0 111.0 9.76 14.50 0.0 0.0 1.0 6563.00 52.86 1172.0 53.62 798.0 20112.0 49800.0 42.2 16.67 21.80 51.03 1.20 5.13 0.0 3.02 1.14 158.0 109.0 9.30 13.48 0.0 0.0 1.0 6563.00 52.86 1206.0 53.62 798.0 20112.0 49800.0 42.2 16.67 21.80 51.03 1.20 5.13 0.0 3.02 1.14 141.0 92.0 7.63 11.69 0.0 0.0 1.0 6704.0 51.43 1240.0 60.22 821.0 20586.0 46900.0 43.5 19.75 25.28 50.27 0.15 2.88 0.01 1.55 0.10 165.0 103.0 8.31 13.31 0.0 0.0 1.0 5725.0 56.27 1252.0 59.71 790.0 22283.0 49100.0 46.8 24.61 23.97 44.38 0.00 4.86 0.0 1.82 0.37 147.0 87.0 6.95 11.74 0.0 0.0 1.0 5725.0 56.27 1264.0 59.71 790.0 22283.0 49100.0 46.8 24.61 23.97 44.38 0.00 4.86 0.0 1.82 0.37 150.0 92.0 7.28 11.87 0.0 0.0 1.0 5725.0 56.27 1276.0 59.71 790.0 22283.0 49100.0 46.8 24.61 23.97 44.38 0.00 4.86 0.0 1.82 0.37 128.0 80.0 6.27 10.03 0.0 0.0 1.0 5725.0 56.27 1288.0 59.71 790.0 22283.0 49100.0 46.8 24.61 23.97 44.38 0.00 4.86 0.0 1.82 0.37 157.0 87.0 6.75 12.19 0.0 0.0 1.0 5725.0 56.27 1300.0 59.71 790.0 22283.0 49100.0 46.8 24.61 23.97 44.38 0.00 4.86 0.0 1.82 0.37 161.0 96.0 7.38 12.38 0.0 0.0 1.0 5725.0 56.27 1312.0 59.71 790.0 22283.0 49100.0 46.8 24.61 23.97 44.38 0.00 4.86 0.0 1.82 0.37 178.0 104.0 7.93 13.57 0.0 0.0 1.0 MULTIPOLYGON (((-75.11339 39.99649, -75.11137 ...
3201 42101017900 -75.1224 39.9815 -75.1059 39.9921 179 Philadelphia County, Pennsylvania 6050.00 32.21 568.0 26.94 538.0 26021.0 35900.0 27.6 67.97 13.45 15.36 0.17 0.96 0.02 2.03 0.05 NaN NaN NaN NaN 0.0 0.0 0.0 6050.00 32.21 608.0 26.94 538.0 26021.0 35900.0 27.6 67.97 13.45 15.36 0.17 0.96 0.02 2.03 0.05 NaN NaN NaN NaN 0.0 0.0 0.0 6050.00 32.21 647.0 26.94 538.0 26021.0 35900.0 27.6 67.97 13.45 15.36 0.17 0.96 0.02 2.03 0.05 32.0 25.0 3.86 4.95 1.0 0.0 0.0 6050.00 32.21 687.0 26.94 538.0 26021.0 35900.0 27.6 67.97 13.45 15.36 0.17 0.96 0.02 2.03 0.05 53.0 45.0 6.55 7.72 1.0 0.0 0.0 6050.00 32.21 726.0 26.94 538.0 26021.0 35900.0 27.6 67.97 13.45 15.36 0.17 0.96 0.02 2.03 0.05 75.0 58.0 7.99 10.33 1.0 0.0 0.0 5811.00 28.64 766.0 42.40 802.0 28549.0 73500.0 47.7 41.46 30.24 25.73 1.24 0.17 0.0 1.17 0.00 69.0 61.0 7.97 9.01 1.0 0.0 0.0 5811.00 28.64 805.0 42.40 802.0 28549.0 73500.0 47.7 41.46 30.24 25.73 1.24 0.17 0.0 1.17 0.00 81.0 70.0 8.70 10.06 1.0 0.0 0.0 5811.00 28.64 845.0 42.40 802.0 28549.0 73500.0 47.7 41.46 30.24 25.73 1.24 0.17 0.0 1.17 0.00 92.0 56.0 6.63 10.89 0.0 0.0 1.0 5811.00 28.64 884.0 42.40 802.0 28549.0 73500.0 47.7 41.46 30.24 25.73 1.24 0.17 0.0 1.17 0.00 108.0 74.0 8.37 12.22 0.0 0.0 1.0 5811.00 28.64 924.0 42.40 802.0 28549.0 73500.0 47.7 41.46 30.24 25.73 1.24 0.17 0.0 1.17 0.00 79.0 55.0 5.96 8.55 0.0 0.0 1.0 6313.0 39.87 963.0 45.97 915.0 23516.0 68900.0 47.4 41.57 20.15 34.79 0.16 0.95 0.00 2.30 0.10 103.0 70.0 7.27 10.70 0.0 0.0 1.0 6885.0 33.17 974.0 56.33 967.0 27607.0 63300.0 37.7 35.77 24.33 37.59 0.00 0.65 0.0 1.66 0.00 128.0 80.0 8.21 13.14 0.0 0.0 1.0 6885.0 33.17 985.0 56.33 967.0 27607.0 63300.0 37.7 35.77 24.33 37.59 0.00 0.65 0.0 1.66 0.00 99.0 57.0 5.78 10.05 0.0 0.0 1.0 6885.0 33.17 997.0 56.33 967.0 27607.0 63300.0 37.7 35.77 24.33 37.59 0.00 0.65 0.0 1.66 0.00 104.0 74.0 7.43 10.44 0.0 0.0 1.0 6885.0 33.17 1008.0 56.33 967.0 27607.0 63300.0 37.7 35.77 24.33 37.59 0.00 0.65 0.0 1.66 0.00 108.0 75.0 7.44 10.72 0.0 0.0 1.0 6885.0 33.17 1019.0 56.33 967.0 27607.0 63300.0 37.7 35.77 24.33 37.59 0.00 0.65 0.0 1.66 0.00 115.0 72.0 7.07 11.29 0.0 0.0 1.0 6885.0 33.17 1030.0 56.33 967.0 27607.0 63300.0 37.7 35.77 24.33 37.59 0.00 0.65 0.0 1.66 0.00 121.0 80.0 7.77 11.75 0.0 0.0 1.0 MULTIPOLYGON (((-75.10591 39.98804, -75.10836 ...
3202 42101018002 -75.1112 39.9790 -75.1014 39.9880 180.02 Philadelphia County, Pennsylvania 5471.00 16.33 519.0 25.67 511.0 30866.0 48000.0 32.5 95.79 0.25 1.39 0.16 0.42 0.02 1.91 0.05 NaN NaN NaN NaN 0.0 0.0 0.0 5471.00 16.33 538.0 25.67 511.0 30866.0 48000.0 32.5 95.79 0.25 1.39 0.16 0.42 0.02 1.91 0.05 NaN NaN NaN NaN 0.0 0.0 0.0 5471.00 16.33 557.0 25.67 511.0 30866.0 48000.0 32.5 95.79 0.25 1.39 0.16 0.42 0.02 1.91 0.05 18.0 15.0 2.69 3.23 1.0 0.0 0.0 5471.00 16.33 575.0 25.67 511.0 30866.0 48000.0 32.5 95.79 0.25 1.39 0.16 0.42 0.02 1.91 0.05 22.0 21.0 3.65 3.82 1.0 0.0 0.0 5471.00 16.33 594.0 25.67 511.0 30866.0 48000.0 32.5 95.79 0.25 1.39 0.16 0.42 0.02 1.91 0.05 21.0 17.0 2.86 3.53 1.0 0.0 0.0 6154.45 11.06 613.0 27.99 812.0 37404.0 117300.0 30.9 95.85 0.78 2.23 0.00 0.44 0.0 0.70 0.00 23.0 19.0 3.10 3.75 1.0 0.0 0.0 6154.45 11.06 632.0 27.99 812.0 37404.0 117300.0 30.9 95.85 0.78 2.23 0.00 0.44 0.0 0.70 0.00 15.0 15.0 2.37 2.37 1.0 0.0 0.0 6154.45 11.06 651.0 27.99 812.0 37404.0 117300.0 30.9 95.85 0.78 2.23 0.00 0.44 0.0 0.70 0.00 21.0 16.0 2.46 3.23 0.0 0.0 1.0 6154.45 11.06 669.0 27.99 812.0 37404.0 117300.0 30.9 95.85 0.78 2.23 0.00 0.44 0.0 0.70 0.00 14.0 12.0 1.79 2.09 0.0 0.0 1.0 6154.45 11.06 688.0 27.99 812.0 37404.0 117300.0 30.9 95.85 0.78 2.23 0.00 0.44 0.0 0.70 0.00 17.0 14.0 2.03 2.47 0.0 0.0 1.0 5451.0 12.03 707.0 29.58 841.0 34966.0 117600.0 42.3 94.48 0.61 3.43 0.09 0.53 0.00 0.86 0.00 15.0 7.0 0.99 2.12 0.0 0.0 1.0 5430.0 19.85 715.0 27.63 831.0 40891.0 141300.0 40.2 94.33 0.07 4.97 0.00 0.63 0.0 0.00 0.00 32.0 20.0 2.80 4.48 0.0 0.0 1.0 5430.0 19.85 723.0 27.63 831.0 40891.0 141300.0 40.2 94.33 0.07 4.97 0.00 0.63 0.0 0.00 0.00 48.0 30.0 4.15 6.64 0.0 0.0 1.0 5430.0 19.85 731.0 27.63 831.0 40891.0 141300.0 40.2 94.33 0.07 4.97 0.00 0.63 0.0 0.00 0.00 33.0 24.0 3.28 4.51 0.0 0.0 1.0 5430.0 19.85 739.0 27.63 831.0 40891.0 141300.0 40.2 94.33 0.07 4.97 0.00 0.63 0.0 0.00 0.00 29.0 23.0 3.11 3.92 0.0 0.0 1.0 5430.0 19.85 747.0 27.63 831.0 40891.0 141300.0 40.2 94.33 0.07 4.97 0.00 0.63 0.0 0.00 0.00 35.0 24.0 3.21 4.69 0.0 0.0 1.0 5430.0 19.85 755.0 27.63 831.0 40891.0 141300.0 40.2 94.33 0.07 4.97 0.00 0.63 0.0 0.00 0.00 41.0 32.0 4.24 5.43 0.0 0.0 1.0 MULTIPOLYGON (((-75.10506 39.98707, -75.10437 ...
3203 42101018300 -75.0865 39.9838 -75.0654 40.0056 183 Philadelphia County, Pennsylvania 4008.00 10.01 184.0 11.41 554.0 32820.0 60100.0 19.0 97.21 0.27 1.05 0.40 0.15 0.02 0.90 0.00 NaN NaN NaN NaN 0.0 0.0 0.0 4008.00 10.01 192.0 11.41 554.0 32820.0 60100.0 19.0 97.21 0.27 1.05 0.40 0.15 0.02 0.90 0.00 NaN NaN NaN NaN 0.0 0.0 0.0 4008.00 10.01 199.0 11.41 554.0 32820.0 60100.0 19.0 97.21 0.27 1.05 0.40 0.15 0.02 0.90 0.00 5.0 4.0 2.01 2.51 1.0 0.0 0.0 4008.00 10.01 207.0 11.41 554.0 32820.0 60100.0 19.0 97.21 0.27 1.05 0.40 0.15 0.02 0.90 0.00 8.0 6.0 2.91 3.87 1.0 0.0 0.0 4008.00 10.01 214.0 11.41 554.0 32820.0 60100.0 19.0 97.21 0.27 1.05 0.40 0.15 0.02 0.90 0.00 8.0 7.0 3.27 3.74 1.0 0.0 0.0 4712.00 10.32 222.0 16.04 911.0 39727.0 129200.0 35.3 93.19 5.58 1.08 0.15 0.00 0.0 0.00 0.00 8.0 7.0 3.16 3.61 1.0 0.0 0.0 4712.00 10.32 229.0 16.04 911.0 39727.0 129200.0 35.3 93.19 5.58 1.08 0.15 0.00 0.0 0.00 0.00 6.0 4.0 1.75 2.62 1.0 0.0 0.0 4712.00 10.32 237.0 16.04 911.0 39727.0 129200.0 35.3 93.19 5.58 1.08 0.15 0.00 0.0 0.00 0.00 9.0 5.0 2.11 3.81 0.0 0.0 1.0 4712.00 10.32 244.0 16.04 911.0 39727.0 129200.0 35.3 93.19 5.58 1.08 0.15 0.00 0.0 0.00 0.00 11.0 7.0 2.87 4.51 0.0 0.0 1.0 4712.00 10.32 252.0 16.04 911.0 39727.0 129200.0 35.3 93.19 5.58 1.08 0.15 0.00 0.0 0.00 0.00 9.0 5.0 1.99 3.58 0.0 0.0 1.0 4313.0 14.37 259.0 15.56 885.0 44742.0 144300.0 26.6 95.66 0.56 2.11 0.16 0.37 0.00 1.07 0.07 6.0 4.0 1.54 2.32 0.0 0.0 1.0 3818.0 14.05 265.0 19.48 1045.0 52288.0 145700.0 40.5 98.40 0.00 1.07 0.00 0.29 0.0 0.24 0.00 6.0 3.0 1.13 2.27 0.0 0.0 1.0 3818.0 14.05 270.0 19.48 1045.0 52288.0 145700.0 40.5 98.40 0.00 1.07 0.00 0.29 0.0 0.24 0.00 8.0 7.0 2.59 2.96 0.0 0.0 1.0 3818.0 14.05 276.0 19.48 1045.0 52288.0 145700.0 40.5 98.40 0.00 1.07 0.00 0.29 0.0 0.24 0.00 10.0 9.0 3.27 3.63 0.0 0.0 1.0 3818.0 14.05 281.0 19.48 1045.0 52288.0 145700.0 40.5 98.40 0.00 1.07 0.00 0.29 0.0 0.24 0.00 8.0 5.0 1.78 2.85 0.0 0.0 1.0 3818.0 14.05 287.0 19.48 1045.0 52288.0 145700.0 40.5 98.40 0.00 1.07 0.00 0.29 0.0 0.24 0.00 6.0 3.0 1.05 2.09 0.0 0.0 1.0 3818.0 14.05 292.0 19.48 1045.0 52288.0 145700.0 40.5 98.40 0.00 1.07 0.00 0.29 0.0 0.24 0.00 12.0 7.0 2.40 4.11 0.0 0.0 1.0 MULTIPOLYGON (((-75.06581 39.98629, -75.06859 ...
3204 42101018400 -75.0757 39.9863 -75.0522 40.0088 184 Philadelphia County, Pennsylvania 2178.00 14.07 163.0 19.54 556.0 33065.0 54700.0 29.5 95.96 0.09 2.25 0.32 0.46 0.00 0.92 0.00 NaN NaN NaN NaN 0.0 0.0 0.0 2178.00 14.07 169.0 19.54 556.0 33065.0 54700.0 29.5 95.96 0.09 2.25 0.32 0.46 0.00 0.92 0.00 NaN NaN NaN NaN 0.0 0.0 0.0 2178.00 14.07 175.0 19.54 556.0 33065.0 54700.0 29.5 95.96 0.09 2.25 0.32 0.46 0.00 0.92 0.00 0.0 0.0 0.00 0.00 1.0 0.0 0.0 2178.00 14.07 181.0 19.54 556.0 33065.0 54700.0 29.5 95.96 0.09 2.25 0.32 0.46 0.00 0.92 0.00 1.0 1.0 0.55 0.55 1.0 0.0 0.0 2178.00 14.07 187.0 19.54 556.0 33065.0 54700.0 29.5 95.96 0.09 2.25 0.32 0.46 0.00 0.92 0.00 2.0 2.0 1.07 1.07 1.0 0.0 0.0 2115.00 12.26 193.0 19.47 828.0 42841.0 141800.0 50.0 95.04 0.00 4.40 0.00 0.00 0.0 0.57 0.00 3.0 2.0 1.04 1.55 1.0 0.0 0.0 2115.00 12.26 199.0 19.47 828.0 42841.0 141800.0 50.0 95.04 0.00 4.40 0.00 0.00 0.0 0.57 0.00 5.0 5.0 2.51 2.51 1.0 0.0 0.0 2115.00 12.26 205.0 19.47 828.0 42841.0 141800.0 50.0 95.04 0.00 4.40 0.00 0.00 0.0 0.57 0.00 7.0 5.0 2.44 3.41 0.0 0.0 1.0 2115.00 12.26 211.0 19.47 828.0 42841.0 141800.0 50.0 95.04 0.00 4.40 0.00 0.00 0.0 0.57 0.00 8.0 6.0 2.84 3.79 0.0 0.0 1.0 2115.00 12.26 217.0 19.47 828.0 42841.0 141800.0 50.0 95.04 0.00 4.40 0.00 0.00 0.0 0.57 0.00 5.0 4.0 1.84 2.30 0.0 0.0 1.0 2260.0 8.32 223.0 25.66 1042.0 42639.0 120400.0 34.6 93.32 0.35 3.72 0.22 0.71 0.00 1.64 0.04 4.0 4.0 1.79 1.79 0.0 0.0 1.0 2471.0 9.59 226.0 25.33 768.0 48715.0 138200.0 40.8 90.98 0.04 5.54 0.00 3.12 0.0 0.32 0.00 8.0 6.0 2.66 3.55 0.0 0.0 1.0 2471.0 9.59 228.0 25.33 768.0 48715.0 138200.0 40.8 90.98 0.04 5.54 0.00 3.12 0.0 0.32 0.00 7.0 2.0 0.88 3.07 0.0 0.0 1.0 2471.0 9.59 231.0 25.33 768.0 48715.0 138200.0 40.8 90.98 0.04 5.54 0.00 3.12 0.0 0.32 0.00 7.0 5.0 2.17 3.04 0.0 0.0 1.0 2471.0 9.59 233.0 25.33 768.0 48715.0 138200.0 40.8 90.98 0.04 5.54 0.00 3.12 0.0 0.32 0.00 6.0 4.0 1.72 2.58 0.0 0.0 1.0 2471.0 9.59 236.0 25.33 768.0 48715.0 138200.0 40.8 90.98 0.04 5.54 0.00 3.12 0.0 0.32 0.00 3.0 1.0 0.42 1.27 0.0 0.0 1.0 2471.0 9.59 238.0 25.33 768.0 48715.0 138200.0 40.8 90.98 0.04 5.54 0.00 3.12 0.0 0.32 0.00 7.0 2.0 0.84 2.94 0.0 0.0 1.0 MULTIPOLYGON (((-75.05902 39.99251, -75.05954 ...

384 rows × 399 columns

1.1.3 Transform from wide to tidy format

I am interested in the number of evictions by census tract for various years. Right now, each year has it's own column, so it will be easiest to transform to a tidy format.

pd.melt() function is used to transform the eviction data into tidy format, using the number of evictions from 2003 to 2016.

In [6]:
id_vars = ["GEOID","geometry"]
value_vars = ['e-{:02d}'.format(x) for x in range(3, 17)]
var_name = "col_name"
value_name = "eviction_number"

eviction_phl_melt = eviction_phl.melt(id_vars,value_vars,var_name,value_name)
In [7]:
eviction_phl_melt
Out[7]:
GEOID geometry col_name eviction_number
0 42101000100 MULTIPOLYGON (((-75.14161 39.95549, -75.14163 ... e-03 21.0
1 42101000200 MULTIPOLYGON (((-75.15122 39.95686, -75.15167 ... e-03 3.0
2 42101000300 MULTIPOLYGON (((-75.16234 39.95782, -75.16237 ... e-03 17.0
3 42101000801 MULTIPOLYGON (((-75.17732 39.95096, -75.17784 ... e-03 13.0
4 42101000804 MULTIPOLYGON (((-75.17118 39.94778, -75.17102 ... e-03 21.0
... ... ... ... ...
5371 42101017800 MULTIPOLYGON (((-75.11339 39.99649, -75.11137 ... e-16 104.0
5372 42101017900 MULTIPOLYGON (((-75.10591 39.98804, -75.10836 ... e-16 80.0
5373 42101018002 MULTIPOLYGON (((-75.10506 39.98707, -75.10437 ... e-16 32.0
5374 42101018300 MULTIPOLYGON (((-75.06581 39.98629, -75.06859 ... e-16 7.0
5375 42101018400 MULTIPOLYGON (((-75.05902 39.99251, -75.05954 ... e-16 2.0

5376 rows × 4 columns

1.1.4 Plot the total number of evictions per year from 2003 to 2016

hvplot is used to plot the total number of evictions from 2003 to 2016.

In [8]:
import holoviews as hv
import hvplot.pandas
In [9]:
# selecting the year (2003-2016)
year = "20" + eviction_phl_melt.col_name.str.slice(start=-2)
eviction_phl_melt["year"] = year.astype("int")

#group by census tract to get the number of evictions
eviction_grouped = eviction_phl_melt.groupby("year",as_index=False).agg({"eviction_number":"sum"})
In [10]:
(eviction_grouped.hvplot.area(x="year",
                             y="eviction_number",
                             ylim=(9000,12000),
                             c="#F2B70544",
                             line_color="#D96704",
                             line_width=3,
                             grid=True,
                             title="The total number of evictions per year from 2003 to 2016")*
eviction_grouped.hvplot.scatter(x="year",
                             y="eviction_number",
                             ylim=(9000,12000),
                             c="#FFFFFF",
                             line_color="#D96704",
                             line_width=2)*
hv.HLine(eviction_grouped.eviction_number.mean()).opts(color='#772100aa',line_width=1.5)*
hv.Text(2003.1, 10790, "Mean", halign='left',fontsize=10))
Out[10]:

1.1.5 The number of evictions across Philadelphia

Generates a choropleth showing the number of evictions for a specified year, with a widget dropdown to select a given year.

In [11]:
# to make the widget "dropdown" instead of "slider"
eviction_phl_melt["year"] = year.astype("str")
eviction_phl_melt.hvplot.polygons(frame_width=500,
                                  groupby="year",
                                  dynamic=False,
                                  c="eviction_number",
                                  cmap="Plasma",
                                  title="The map of evictions across Philadelphia",
                                  xlabel="",ylabel="",
                                  hover_cols=["GEOID","eviction_number"],
                                  aspect=0.9)
Out[11]:

1.2 Code Violations in Philadelphia

Next, I am going to explore data for code violations from the Licenses and Inspections Department of Philadelphia to look for potential correlations with the number of evictions.

1.2.1 Load data from 2012 to 2016

In [12]:
violation = gpd.read_file("data/li_violations.csv")
violation["geometry"] = gpd.points_from_xy(violation.lng, violation.lat, crs=4326)
/Users/zh3n/opt/miniconda3/envs/musa550/lib/python3.8/site-packages/geopandas/geodataframe.py:577: RuntimeWarning: Sequential read of iterator was interrupted. Resetting iterator. This can negatively impact the performance.
  for feature in features_lst:
In [13]:
violation
Out[13]:
lat lng violationdescription geometry
0 40.050526 -75.126076 CLIP VIOLATION NOTICE POINT (-75.12608 40.05053)
1 40.050593 -75.126578 LICENSE-CHANGE OF ADDRESS POINT (-75.12658 40.05059)
2 40.050593 -75.126578 LICENSE-RES SFD/2FD POINT (-75.12658 40.05059)
3 39.991994 -75.128895 EXT A-CLEAN WEEDS/PLANTS POINT (-75.12889 39.99199)
4 40.02326 -75.164848 EXT A-VACANT LOT CLEAN/MAINTAI POINT (-75.16485 40.02326)
... ... ... ... ...
434047 40.012805 -75.155963 SD-REQD EXIST GROUP R POINT (-75.15596 40.01281)
434048 40.009985 -75.068968 RUBBISH/GARBAGE EXTERIOR-OWNER POINT (-75.06897 40.00999)
434049 40.009829 -75.068912 CLIP VIOLATION NOTICE POINT (-75.06891 40.00983)
434050 40.009776 -75.068895 PERSONAL PROPERTY EXT OWNER POINT (-75.06889 40.00978)
434051 40.009776 -75.068895 LICENSE - RENTAL PROPERTY POINT (-75.06889 40.00978)

434052 rows × 4 columns

1.2.2 Trim to specific violation types

There are many different types of code violations (running the nunique() function on the violationdescription column will extract all of the unique ones). More information on different types of violations can be found on the City's website.

Below, I've selected 15 types of violations that deal with property maintenance and licensing issues. I'll focus on these violations. The goal is to see if these kinds of violations are correlated spatially with the number of evictions in a given area.

In [14]:
violation_types = [
    "INT-PLMBG MAINT FIXTURES-RES",
    "INT S-CEILING REPAIR/MAINT SAN",
    "PLUMBING SYSTEMS-GENERAL",
    "CO DETECTOR NEEDED",
    "INTERIOR SURFACES",
    "EXT S-ROOF REPAIR",
    "ELEC-RECEPTABLE DEFECTIVE-RES",
    "INT S-FLOOR REPAIR",
    "DRAINAGE-MAIN DRAIN REPAIR-RES",
    "DRAINAGE-DOWNSPOUT REPR/REPLC",
    "LIGHT FIXTURE DEFECTIVE-RES",
    "LICENSE-RES SFD/2FD",
    "ELECTRICAL -HAZARD",
    "VACANT PROPERTIES-GENERAL",
    "INT-PLMBG FIXTURES-RES",
]
In [15]:
filter_by_violation_types = violation.violationdescription.isin(violation_types)
violation_filtered = violation[filter_by_violation_types]
In [16]:
violation_filtered
Out[16]:
lat lng violationdescription geometry
2 40.050593 -75.126578 LICENSE-RES SFD/2FD POINT (-75.12658 40.05059)
25 40.022406 -75.121872 EXT S-ROOF REPAIR POINT (-75.12187 40.02241)
30 40.023237 -75.121726 CO DETECTOR NEEDED POINT (-75.12173 40.02324)
31 40.023397 -75.122241 INT S-CEILING REPAIR/MAINT SAN POINT (-75.12224 40.02340)
34 40.023773 -75.121603 INT S-FLOOR REPAIR POINT (-75.12160 40.02377)
... ... ... ... ...
433982 39.962287 -75.226644 CO DETECTOR NEEDED POINT (-75.22664 39.96229)
433985 39.968669 -75.212576 CO DETECTOR NEEDED POINT (-75.21258 39.96867)
434013 39.950209 -75.227244 INT S-CEILING REPAIR/MAINT SAN POINT (-75.22724 39.95021)
434043 39.936179 -75.192078 INT S-FLOOR REPAIR POINT (-75.19208 39.93618)
434046 40.012805 -75.155963 ELECTRICAL -HAZARD POINT (-75.15596 40.01281)

34108 rows × 4 columns

1.2.3 Make a hex bin map

In [17]:
# project violation to NAD83 / Pennsylvania South (ftUS) 
violation_projected = violation_filtered.to_crs(2272)

# the phl overlay
phl_tracts = eviction_phl_melt.to_crs(2272).groupby("GEOID",as_index=False)["geometry"].first()
In [18]:
import matplotlib.pyplot as plt
from mpl_toolkits.axes_grid1 import make_axes_locatable

# create the axes
fig, ax = plt.subplots(figsize=(12, 12))
divider = make_axes_locatable(ax)
cax = divider.append_axes("right", size="5%", pad=0.2)

# extract out the x/y coordindates
xcoords = violation_projected.geometry.x
ycoords = violation_projected.geometry.y

# hexbin chart & PHL boundaries
hex_vals = ax.hexbin(xcoords, ycoords, gridsize=50,)
phl_tracts.plot(ax=ax, facecolor="none", edgecolor="white", linewidth=0.4,)

# set the xy lims
xmin, ymin, xmax, ymax = violation_projected.total_bounds
ax.set_xlim(xmin, xmax)
ax.set_ylim(ymin, ymax)

# add a colorbar and format
fig.colorbar(hex_vals, ax=ax,cax=cax)
ax.set_axis_off()
ax.set_aspect("equal")
ax.set_title("Code Violations Hexbin map in Philadelphia", fontdict={"size": "20"})
plt.show()

1.2.4 Spatially join data sets

To do a census tract comparison to our eviction data.

In [19]:
violation_by_tract = gpd.sjoin(phl_tracts,violation_projected,how='left')

# to make all tracts groupable by setting default violation
violation_by_tract.violationdescription = violation_by_tract.violationdescription.fillna("LICENSE-RES SFD/2FD")
violation_by_tract
Out[19]:
GEOID geometry index_right lat lng violationdescription
0 42101000100 MULTIPOLYGON (((2699640.262 237441.515, 269963... 132007.0 39.949716 -75.144115 LICENSE-RES SFD/2FD
0 42101000100 MULTIPOLYGON (((2699640.262 237441.515, 269963... 24975.0 39.949822 -75.14623 LICENSE-RES SFD/2FD
0 42101000100 MULTIPOLYGON (((2699640.262 237441.515, 269963... 241138.0 39.950358 -75.145797 DRAINAGE-DOWNSPOUT REPR/REPLC
0 42101000100 MULTIPOLYGON (((2699640.262 237441.515, 269963... 313592.0 39.950647 -75.145337 INT S-CEILING REPAIR/MAINT SAN
0 42101000100 MULTIPOLYGON (((2699640.262 237441.515, 269963... 206451.0 39.950647 -75.145337 INT S-FLOOR REPAIR
... ... ... ... ... ... ...
381 42101980800 MULTIPOLYGON (((2665677.063 244517.701, 266542... 124787.0 39.964527 -75.247226 DRAINAGE-DOWNSPOUT REPR/REPLC
381 42101980800 MULTIPOLYGON (((2665677.063 244517.701, 266542... 69710.0 39.964527 -75.247226 DRAINAGE-MAIN DRAIN REPAIR-RES
381 42101980800 MULTIPOLYGON (((2665677.063 244517.701, 266542... 16953.0 39.964527 -75.247226 INT S-CEILING REPAIR/MAINT SAN
382 42101980900 MULTIPOLYGON (((2685474.928 208476.522, 268541... NaN NaN NaN LICENSE-RES SFD/2FD
383 42101989100 MULTIPOLYGON (((2736338.397 263197.856, 273546... 310973.0 40.034424 -75.017732 DRAINAGE-DOWNSPOUT REPR/REPLC

34123 rows × 6 columns

1.2.5 Calculate the number of violations by type per census tract

Next, I want to find the number of violations (for each kind) per census tract, grouping the data frame by violation type and census tract name.

The result of this step is a data frame with three columns: violationdescription, GEOID, and N, where N is the number of violations of that kind in the specified census tract.

In [20]:
# group by GEOID and violationdescription
violation_by_tract_grouped = violation_by_tract.groupby(["GEOID","violationdescription"])["geometry"].count()

# to make prettier plots
violation_by_tract_grouped = violation_by_tract_grouped.unstack(fill_value=0).stack().reset_index(name="N")
violation_by_tract_grouped
Out[20]:
GEOID violationdescription N
0 42101000100 CO DETECTOR NEEDED 0
1 42101000100 DRAINAGE-DOWNSPOUT REPR/REPLC 6
2 42101000100 DRAINAGE-MAIN DRAIN REPAIR-RES 0
3 42101000100 ELEC-RECEPTABLE DEFECTIVE-RES 0
4 42101000100 ELECTRICAL -HAZARD 1
... ... ... ...
5755 42101989100 INTERIOR SURFACES 0
5756 42101989100 LICENSE-RES SFD/2FD 0
5757 42101989100 LIGHT FIXTURE DEFECTIVE-RES 0
5758 42101989100 PLUMBING SYSTEMS-GENERAL 0
5759 42101989100 VACANT PROPERTIES-GENERAL 0

5760 rows × 3 columns

1.2.6 Merge with census tracts geometries

In [21]:
violation_by_tract_gpd = pd.merge(phl_tracts, violation_by_tract_grouped, on="GEOID",how='left')
violation_by_tract_gpd
Out[21]:
GEOID geometry violationdescription N
0 42101000100 MULTIPOLYGON (((2699640.262 237441.515, 269963... CO DETECTOR NEEDED 0
1 42101000100 MULTIPOLYGON (((2699640.262 237441.515, 269963... DRAINAGE-DOWNSPOUT REPR/REPLC 6
2 42101000100 MULTIPOLYGON (((2699640.262 237441.515, 269963... DRAINAGE-MAIN DRAIN REPAIR-RES 0
3 42101000100 MULTIPOLYGON (((2699640.262 237441.515, 269963... ELEC-RECEPTABLE DEFECTIVE-RES 0
4 42101000100 MULTIPOLYGON (((2699640.262 237441.515, 269963... ELECTRICAL -HAZARD 1
... ... ... ... ...
5755 42101989100 MULTIPOLYGON (((2736338.397 263197.856, 273546... INTERIOR SURFACES 0
5756 42101989100 MULTIPOLYGON (((2736338.397 263197.856, 273546... LICENSE-RES SFD/2FD 0
5757 42101989100 MULTIPOLYGON (((2736338.397 263197.856, 273546... LIGHT FIXTURE DEFECTIVE-RES 0
5758 42101989100 MULTIPOLYGON (((2736338.397 263197.856, 273546... PLUMBING SYSTEMS-GENERAL 0
5759 42101989100 MULTIPOLYGON (((2736338.397 263197.856, 273546... VACANT PROPERTIES-GENERAL 0

5760 rows × 4 columns

1.2.7 Interactive choropleths for each violation type

In [22]:
violation_by_tract_gpd.hvplot.polygons(
    aspect = 0.9,
    frame_width=500,
    c = "N",
    groupby = "violationdescription",
    dynamic=False,
    cmap="Plasma",
    title="The map of violation across Philadelphia by census tracts",
    xlabel="",ylabel="",xticks=0,yticks=0,
    hover_cols=["GEOID","N"]
)
Out[22]:

1.3. A side-by-side comparison

In [23]:
top20violations = ( violation
    .groupby("violationdescription")["geometry"]
    .count()
    .sort_values(ascending=False)[:20]
    .index
    .to_frame()
    .reset_index(drop=True)
)
top20violations
Out[23]:
violationdescription
0 CLIP VIOLATION NOTICE
1 EXT A-VACANT LOT CLEAN/MAINTAI
2 HIGH WEEDS-CUT
3 LICENSE-VAC RES BLDG
4 VACANT PROP STANDARD
5 RUBBISH/GARBAGE EXTERIOR-OWNER
6 EXT A-CLEAN RUBBISH/GARBAGE
7 LICENSE-RES SFD/2FD
8 EXT A-CLEAN WEEDS/PLANTS
9 LICENSE-RES GENERAL
10 VACANT BLDG UNSECURED COUNT
11 INT S-CEILING REPAIR/MAINT SAN
12 VIOL C&I MESSAGE
13 CO DETECTOR NEEDED
14 ANNUAL CERT FIRE ALARM
15 LICENSE - RENTAL PROPERTY
16 VAC PROP REPLAC WIN/DRS 80%
17 SD-REQD EXIST GROUP R
18 PERM Z- NEW USE
19 INT S-WALLS REPAIR/MAINT SANI
In [24]:
# filtering top 20
violation20 = violation[violation.violationdescription.isin(top20violations.squeeze(axis=1))].to_crs(2272)
In [25]:
# spatial join
violation20_by_tract = gpd.sjoin(phl_tracts,violation20,how='left')
In [26]:
# group by GEOID and type of violation
violation20_grouped = violation20_by_tract.groupby(["GEOID","violationdescription"])["index_right"].count().reset_index(name='N')
In [27]:
# Cross join tracts and type of violation
# to make a table of all tracts with all top20 violation,
# in order to avoid missing value in map. 
# (It has the same idea as `unstack` in 1.2.5)
phl_tracts_for_cross_join = phl_tracts.assign(joinkey=0)
top20violations_for_cross_join = top20violations.assign(joinkey=0)
tracks_violations_combination = pd.merge(phl_tracts_for_cross_join, 
                                         top20violations_for_cross_join,
                                         how="outer", on = "joinkey").drop("joinkey",axis=1)
tracks_violations_combination
Out[27]:
GEOID geometry violationdescription
0 42101000100 MULTIPOLYGON (((2699640.262 237441.515, 269963... CLIP VIOLATION NOTICE
1 42101000100 MULTIPOLYGON (((2699640.262 237441.515, 269963... EXT A-VACANT LOT CLEAN/MAINTAI
2 42101000100 MULTIPOLYGON (((2699640.262 237441.515, 269963... HIGH WEEDS-CUT
3 42101000100 MULTIPOLYGON (((2699640.262 237441.515, 269963... LICENSE-VAC RES BLDG
4 42101000100 MULTIPOLYGON (((2699640.262 237441.515, 269963... VACANT PROP STANDARD
... ... ... ...
7675 42101989100 MULTIPOLYGON (((2736338.397 263197.856, 273546... LICENSE - RENTAL PROPERTY
7676 42101989100 MULTIPOLYGON (((2736338.397 263197.856, 273546... VAC PROP REPLAC WIN/DRS 80%
7677 42101989100 MULTIPOLYGON (((2736338.397 263197.856, 273546... SD-REQD EXIST GROUP R
7678 42101989100 MULTIPOLYGON (((2736338.397 263197.856, 273546... PERM Z- NEW USE
7679 42101989100 MULTIPOLYGON (((2736338.397 263197.856, 273546... INT S-WALLS REPAIR/MAINT SANI

7680 rows × 3 columns

In [28]:
# join violation into the combination table
violation20_by_tract_gpd = pd.merge(tracks_violations_combination, 
                                  violation20_grouped, 
                                  on=["GEOID","violationdescription"],how='left')
violation20_by_tract_gpd = violation20_by_tract_gpd.fillna(0)
In [33]:
eviction_2016 = eviction_phl_melt[eviction_phl_melt.year == "2016"].to_crs(2272)
plot1 = eviction_2016.hvplot.polygons(
    aspect=0.9,
    frame_height=400,
    c = "eviction_number",
    cmap="Plasma",
    title="Eviction, 2016, PHL",
    xlabel="",ylabel="",xticks=0,yticks=0,
    hover_cols=["GEOID","eviction_number"]
)

plot3 = violation20_by_tract_gpd.hvplot.polygons(
    aspect = 0.9,
    frame_height=400,
    c = "N",
    groupby = "violationdescription",
    dynamic=False,
    cmap="Plasma",
    title="Top 20 violations by census tracts",
    xlabel="",ylabel="",xticks=0,yticks=0,
    hover_cols=["GEOID","N"],
#     widget_location='top'
)
hv.output(widget_location='bottom')
plot1 + plot3
Out[33]:

According to the maps above, "CLIP VIOLATION NOTICE","VIOL C&I MESSAGE","EXT A-VACANT LOT CLEAN/MAINTAI" don't seem to have much spatial overlap with the number of evictions in the City.